---
title: dcmi_get_user_config接口原型
description: "int dcmi_get_user_config(int card_id, int device_id, const char *config_name, unsigned int buf_size, unsigned char *buf)"
url: https://www.hiascend.com/document/detail/zh/Atlas%20200I%20A2/latest/re/api/api_133.html
sourcePath: /source/zh/Atlas 200I A2/260RC1/re/api/api_133.html
indexId: c5527849687a158ca3d3939dc32079d5c7f3f70d003fb779aad493ba98d33f3551
---
# dcmi_get_user_config接口原型

#### 函数原型

int dcmi_get_user_config(int card_id, int device_id, const char *config_name, unsigned int buf_size, unsigned char *buf)


#### 功能说明

获取用户配置。


#### 参数说明

| 参数名称 | 输入/输出 | 类型 | 描述 |
| --- | --- | --- | --- |
| card\_id | 输入 | int | 设备ID，当前实际支持的ID通过dcmi\_get\_card\_num\_list接口获取。 |
| device\_id | 输入 | int | 芯片ID，通过dcmi\_get\_device\_id\_in\_card接口获取。取值范围如下： NPU芯片：[0, device\_id\_max\-1]。 |
| config\_name | 输入 | const char \* | 目前支持处理的配置项名称如下，配置项名称的字符串长度最大为32。支持用户自定义名称配置。 已实现功能的配置项：ddr\_ecc\_enable、cpu\_num\_cfg。 配置项功能说明如下： "ddr\_ecc\_enable"：用于使能或禁用ECC。 "cpu\_num\_cfg"：用于系统cpu配比设置。 |
| buf\_size | 输入 | unsigned int | buf长度，最大长度为1K byte。 该参数的配置，请参见dcmi\_set\_device\_user\_config接口原型。 |
| buf | 输出 | unsigned char \* | buf指针，指向配置项内容。 具体配置项内容的含义，请参见dcmi\_set\_device\_user\_config接口原型。 |


#### 返回值说明

| 类型 | 描述 |
| --- | --- |
| int | 处理结果： 成功：返回0。 失败：返回码请参见返回码。 |


#### 异常处理

无。


#### 约束说明

在Atlas 200I A2 加速模块产品中，该接口需调入TEEOS，耗时较长，不支持在接口调用时触发休眠唤醒，如果触发休眠，有较大可能造成休眠失败。


**表1 不同部署场景下的支持情况**

| 物理机场景（裸机） | 物理机场景（裸机） | 物理机+普通容器场景 |
| --- | --- | --- |
| root用户 | 运行用户组（非root用户） | root用户 |
| Y | Y | Y |
| 注：Y表示支持；N表示不支持；NA表示不涉及，当前未规划此场景。 | 注：Y表示支持；N表示不支持；NA表示不涉及，当前未规划此场景。 | 注：Y表示支持；N表示不支持；NA表示不涉及，当前未规划此场景。 |


#### 调用示例

```
…
#define BUF_SIZE 16
int ret = 0;
int card_id = 0;
int device_id = 0;
const char *config_name = "cpu_num_cfg";
unsigned char buf[BUF_SIZE] = {0};
ret=dcmi_get_user_config(card_id, device_id, config_name, BUF_SIZE, buf);
if (ret != 0) {
//todo:记录日志
return ret;
}
…
```
